#ifndef MYDRAWABLE_H_
#define MYDRAWABLE_H_

#include <d3d10.h>
#include <d3dx10.h>
#include "vertexTypes.h"
#include "lights.h"
class Drawable
{
	/*******************************************************************
	* Members
	********************************************************************/	
private:
	//Meshes
	ID3DX10Mesh*							myMesh;
	Material*								material;
	ID3D10EffectShaderResourceVariable*		pTextureSR;
	ID3D10EffectMatrixVariable*				pWorldMatrixEffectVariable;
	D3D10_TECHNIQUE_DESC					techDesc;
	D3DXMATRIX								positionMatrix;
	/*******************************************************************
	* Methods
	********************************************************************/	
public:

	//constructor and destructor
	Drawable(ID3DX10Mesh* mesh, Material* mat, ID3D10EffectShaderResourceVariable* pTextureSR, ID3D10ShaderResourceView* tex, D3D10_TECHNIQUE_DESC *techDesc, D3DXMATRIX worldMatrix);
	~Drawable();

	void draw(ID3D10Device* pD3DDevice, ID3D10Effect* pBasicEffect);
	void multiply(D3DXMATRIX *mul);
	D3DXMATRIX* getPosMatrix();
private:

};

#endif